// 基础图标属性
export interface IconBaseProps {
  /** 图标名称或标识符 */
  icon: string;
  /** 图标大小 */
  size?: string;
  /** 旋转角度 */
  rotation?: number | string;
  /** 翻转 */
  flip?: number | string;
}

// 图标动画属性
export interface IconAnimationProps {
  /** 是否启用心跳动画 */
  beat?: boolean;
  /** 是否启用淡出心跳动画 */
  beatFade?: boolean;
  /** 是否启用弹跳动画 */
  bounce?: boolean;
  /** 是否启用淡入淡出动画 */
  fade?: boolean;
  /** 是否启用摇晃动画 */
  shake?: boolean;
  /** 是否启用旋转动画 */
  spin?: boolean;
  /** 是否启用反向旋转动画 */
  spinReverse?: boolean;
  /** 是否启用脉冲旋转动画 */
  spinPulse?: boolean;
}

// 图标样式属性
export interface IconStyleProps {
  /** 图标类型 */
  type?: string;
  /** 图标颜色 */
  color?: string;
}

// 组合接口
export interface IconProps extends IconBaseProps, IconAnimationProps, IconStyleProps {}
